package com.bro.person.admin.struct;

import com.bro.person.base.enums.error.GlobalEnum;

import java.io.Serializable;
import java.util.List;

/**
 * 认证结果的结构对象
 * @author bruce
 *
 */
public class SecurityAuthenticateResultStruct implements Serializable{

	private static final long serialVersionUID = 1L;

	/**
	 * 目前仅表示错误信息 可能会改成枚举方式返回 （暂时不需要枚举）
	 */
	private GlobalEnum globalEnum;

	private SecurityUserStruct user;
	
	/** 角色列表，TODO 是否要返回角色列表？ */
	private List<SecurityRoleStruct> roleList;
	
	/** 权限列表 */
	private List<SecurityPermissionStruct> permissionList;
	
	// TODO 返回菜单信息

	

	public SecurityAuthenticateResultStruct() {
		super();
	}

	public SecurityAuthenticateResultStruct(SecurityUserStruct user, List<SecurityRoleStruct> roleList,
			List<SecurityPermissionStruct> permissionList) {
		super();
		this.user = user;
		this.roleList = roleList;
		this.permissionList = permissionList;
	}

	public SecurityAuthenticateResultStruct(GlobalEnum globalEnum) {
		super();
		this.globalEnum = globalEnum;
	}
	
	

	public List<SecurityPermissionStruct> getPermissionList() {
		return permissionList;
	}

	public void setPermissionList(List<SecurityPermissionStruct> permissionList) {
		this.permissionList = permissionList;
	}

	public List<SecurityRoleStruct> getRoleList() {
		return roleList;
	}

	public void setRoleList(List<SecurityRoleStruct> roleList) {
		this.roleList = roleList;
	}

	public SecurityUserStruct getUser() {
		return user;
	}

	public void setUser(SecurityUserStruct user) {
		this.user = user;
	}

	public GlobalEnum getGlobalEnum() {
		return globalEnum;
	}

	public void setGlobalEnum(GlobalEnum globalEnum) {
		this.globalEnum = globalEnum;
	}
}
